package slent.iespana.es.Quimica.TablaPeriodica.VentanaTablaPeriodica;

import javax.swing.*;
import java.awt.event.*;

/**
 * Created by IntelliJ IDEA.
 * User: slent
 * Date: 18/01/2010
 * Time: 11:42:22 PM
 * To change this template use File | Settings | File Templates.
 */
public class BarraHerramientas extends JToolBar{

    private TablaPeriodicaDefault tablaPeriodica;
    private Elemento elementoSeleccionado;

    private JButton botonEditar;
    private JButton botonGuardar;
    private JButton botonCancelar;

    private boolean cambiosRealizados;
    private boolean elementoEditado;

    public Elemento getElementoSeleccionado() {
        return elementoSeleccionado;
    }

    public void setElementoSeleccionado(Elemento elementoSeleccionado) {
        this.elementoSeleccionado = elementoSeleccionado;
    }

    public BarraHerramientas(TablaPeriodicaDefault tablaPeriodica){
        this.tablaPeriodica=tablaPeriodica;
        crearGUI();
        agregarlisteners();
    }

    private void crearGUI(){
//        this.add(botonEditar= new JButton("Editar"));
        this.add(botonGuardar= new JButton("Guardar"));
        this.add(botonCancelar = new JButton("Cancelar"));
    }

    private void agregarlisteners(){
        botonGuardar.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e) {
                setCambiosRealizados(true);
            }
        });
    }

    /**
     * Habilita la tabla periódica
     */
    public void habilitar(Elemento elementoSeleccionado){
        this.elementoSeleccionado=elementoSeleccionado;
        setEnabled(true);
        setVisible(true);
    }

    /**
     * Deshabilita la tabla periódica
     */
    public void deshabilitar(){
        this.elementoSeleccionado=null;
        setEnabled(false);
        setVisible(false);
    }

    public boolean isCambiosRealizados() {
        return cambiosRealizados;
    }

    public void setCambiosRealizados(boolean cambiosRealizados) {
        this.cambiosRealizados = cambiosRealizados;
    }

    public boolean isElementoEditado() {
        return elementoEditado;
    }

    public void setElementoEditado(boolean elementoEditado) {
        this.elementoEditado = elementoEditado;
    }

    public JButton getBotonGuardar() {
        return botonGuardar;
    }

    public void setBotonGuardar(JButton botonGuardar) {
        this.botonGuardar = botonGuardar;
    }

    public JButton getBotonCancelar() {
        return botonCancelar;
    }

    public void setBotonCancelar(JButton botonCancelar) {
        this.botonCancelar = botonCancelar;
    }
}
